Virtual wallet insurance

ABSTRACT

Techniques are described for providing insurance coverage for a virtual wallet stored on a computing device. The virtual wallet has a value equal to a sum of assigned values of a plurality of virtual financial assets included in the virtual wallet. A user of the computing device purchases an insurance policy for the virtual wallet with an insured amount based on the value of the virtual wallet. The computing device is configured to send messages to an insurance server reporting an updated value of the virtual wallet based on changes to the assigned values of the virtual financial assets. The insurance server updates the insured amount of the insurance policy based on the updated value of the virtual wallet. Upon the virtual wallet being compromised, the insurance policy has an insured amount equal to the most recent updated value of the virtual wallet.

TECHNICAL FIELD

The disclosure relates to virtual wallet systems.

BACKGROUND

In general, a virtual wallet refers to an application running on acomputing device that allows a user of the computing device to performonline transactions. A computing device configured to execute a virtualwallet application may be any of a wide range of devices, includinglaptop or desktop computers, tablet computers, so-called “smart” phones,“smart” pads, “smart” watches, or other personal digital appliancesequipped for wired or wireless communication. In some examples, thevirtual wallet may be used to purchase goods or services via either awebsite or a point-of-sale device configured to receive online payments.

A virtual wallet includes one or more virtual financial assets, whichmay correspond to any type of digitized asset that has a monetary value.Commonly, a virtual wallet includes one or more virtual credit accounts,virtual banking accounts, virtual currency accounts, or other liquidvirtual assets that can be used to purchase goods and services. In someexamples, a virtual wallet may also include non-liquid virtual assets,such as virtual stock and bond certificates; virtual ownership titlesfor real estate, automobiles, and other property; and virtual eventtickets or other virtual documents having a monetary value. In otherexamples, a virtual wallet may include virtual identification documents.

In the above examples, the virtual wallet includes sensitive informationthat needs to be kept secure. Like all technology, however, virtualwallets have security risks. For example, a virtual wallet may becompromised if the virtual wallet is accessed by an unauthorized user,or if the computing device that stores the virtual wallet is lost,stolen, destroyed, or accessed by an authorized user. Unlike a stolencredit card, if the virtual wallet is compromised, there may be no wayfor a user to recover the virtual financial assets included in thevirtual wallet.

SUMMARY

In general, this disclosure describes techniques for providing insurancecoverage for a current monetary value of a virtual wallet stored on acomputing device. A virtual wallet may include a plurality of virtualfinancial assets each having an assigned value. A value of the virtualwallet may be equal to the sum of the assigned values of the pluralityof virtual financial assets. According to the techniques of thisdisclosure, a user of the virtual wallet may purchase an insurancepolicy for the virtual wallet with an initial insured amount based onthe value of the virtual wallet. After the virtual wallet is insured,the assigned values of the plurality of virtual financial assets in thevirtual wallet may change, e.g., as the virtual financial assets areused to purchase goods or services or as market values fluctuate. Thevalue of the virtual wallet is then updated based on the changes to theassigned values of the virtual financial assets included in the virtualwallet.

The disclosed techniques enable continuous tracking of the virtualwallet by configuring the computing device to send ad hoc messages to aninsurance server reporting the updated value of the virtual wallet. Theinsurance server, in turn, updates the insured amount for the virtualwallet based on the updated value of the virtual wallet. In this way,upon the virtual wallet being compromised, the insurance policy for thevirtual wallet has an insured amount equal to the most recent updatedvalue of the virtual wallet as recorded by the insurance server.

In one example, this disclosure is directed to a method comprisingstoring, by a computing device, a virtual wallet that includes at leastone virtual financial asset having an assigned value, the at least onevirtual financial asset corresponding to a financial asset held by afinancial institution; establishing, by the computing device and with aninsurance company, an insurance policy for the virtual wallet with aninsured amount based on a value of the virtual wallet, the value of thevirtual wallet being equal to the assigned value of the at least onevirtual financial asset included in the virtual wallet; updating, by thecomputing device, the value of the virtual wallet based on a change tothe assigned value of the at least one virtual financial asset includedin the virtual wallet; sending, by the computing device to the insurancecompany, a message reporting the updated value of the virtual wallet;and receiving, by the computing device and from the insurance company,an indication of an updated insured amount of the insurance policy basedon the updated value of the virtual wallet.

In another example, this disclosure is directed to a computing devicecomprising one or more storage units configured to store a virtualwallet that includes at least one virtual financial asset having anassigned value, the at least one virtual financial asset correspondingto a financial asset held by a financial institution, and one or moreprocessors in communication with the one or more storage units. The oneor more processors are configured to establish an insurance policy withan insurance company for the virtual wallet with an insured amount basedon a value of the virtual wallet, the value of the virtual wallet beingequal to the assigned value of the at least one virtual financial assetincluded in the virtual wallet, update the value of the virtual walletbased on a change to the assigned value of the at least one virtualfinancial asset included in the virtual wallet, send a message to theinsurance company reporting the updated value of the virtual wallet, andreceive an indication from the insurance company of an updated insuredamount of the insurance policy based on the updated value of the virtualwallet.

In a further example, this disclosure is directed to a method comprisingreceiving, by an insurance server of an insurance company and from acomputing device, a request for an insurance policy for a virtual walletstored on the computing device, wherein the request includes a value ofthe virtual wallet, the value of the virtual wallet being equal to anassigned value of at least one virtual financial asset included in thevirtual wallet, the at least one virtual financial asset correspondingto a financial asset held by a financial institution; storing, by theinsurance server, the insurance policy for the virtual wallet with aninsured amount based on the value of the virtual wallet; receiving, bythe insurance server and from the computing device, a message reportingan updated value of the virtual wallet, the updated value of the virtualwallet being based on a change to the assigned value of the at least onevirtual financial asset included in the virtual wallet; and updating, bythe insurance server, the insured amount of the insurance policy basedon the updated value of the virtual wallet.

In an additional example, this disclosure is directed to an insuranceserver of an insurance company comprising one or more storage unitsconfigured to store virtual wallet insurance policies, and one or moreprocessors in communication with the one or more storage units. The oneor more processors are configured to receive a request from a computingdevice for an insurance policy for a virtual wallet stored on thecomputing device, wherein the request includes a value of the virtualwallet, the value of the virtual wallet being equal to an assigned valueof at least one virtual financial asset included in the virtual wallet,the at least one virtual financial asset corresponding to a financialasset held by a financial institution, store the insurance policy forthe virtual wallet in the one or more storage units with an insuredamount based on the value of the virtual wallet, receive a message fromthe computing device reporting an updated value of the virtual wallet,the updated value of the virtual wallet being based on a change to theassigned value of the at least one virtual financial asset included inthe virtual wallet, and update the insured amount of the insurancepolicy based on the updated value of the virtual wallet.

The details of one or more examples of the disclosure are set forth inthe accompanying drawings and the description below. Other features,objects, and advantages of the disclosure will be apparent from thedescription and drawings, and from the claims.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram illustrating an example virtual wallet systemconfigured to provide insurance coverage for a current monetary value ofa virtual wallet stored on a computing device, in accordance with thetechniques of this disclosure.

FIG. 2 is a block diagram illustrating an example computing deviceincluding a virtual wallet unit configured to communicate with aninsurance server, in accordance with the techniques of this disclosure.

FIG. 3 is a block diagram illustrating an example insurance serverincluding a virtual wallet insurance unit configured to manage aninsurance policy for a virtual wallet stored on a computing device, inaccordance with the techniques of this disclosure.

FIG. 4 is a flowchart illustrating an example operation of a computingdevice having an insured virtual wallet, in accordance with thetechniques of this disclosure.

FIG. 5 is a flowchart illustrating an example operation of an insuranceserver managing an insurance policy for a virtual wallet, in accordancewith techniques of this disclosure.

DETAILED DESCRIPTION

FIG. 1 is a block diagram illustrating an example virtual wallet system8 configured to provide insurance coverage for a current monetary valueof a virtual wallet stored on a computing device 12, in accordance withthe techniques of this disclosure. As illustrated in FIG. 1, virtualwallet system 8 includes a computing device 12 with a virtual walletunit 18 that manages a virtual wallet used to perform onlinetransactions, insurance server 14 associated with an insurance company,and a financial institution server 16 associated with a financialinstitution that are all in communication via a network 10.

Computing device 12 may comprise any of a wide range of user devices,including laptop or desktop computers, tablet computers, so-called“smart” phones, “smart” pads, “smart” watches, or other personal digitalappliances equipped for wired or wireless communication. Computingdevice 12 may include at least one user interface device (not shown)that enables a user of computing device 12 to interact with computingdevice 12. In some examples, the user interface device of computingdevice 12 may be configured to receive tactile, audio, or visual input.In addition to receiving input from the user, the user interface deviceof computing device 12 may be configured to output content such as agraphical user interface (GUI) for display, e.g., at a display deviceassociated with computing device 12.

Computing device 12 may include one or more processors configured toexecute virtual wallet unit 18. For example, virtual wallet unit 18 maybe implemented as a downloadable or pre-installed application or “app”that is executed by the one or more processors of computing device 12.Virtual wallet unit 18 manages a virtual wallet stored on computingdevice 12 used to perform online transactions. In some examples, a userof computing device 12 may use the virtual wallet to purchase goods orservices via either a website or a point-of-sale device configured toreceive online payments. The virtual wallet stored on computing device12 includes one or more virtual financial assets, which may correspondto any type of digitized financial asset with a monetary value that isheld at a financial institution. To perform online transactions usingthe virtual wallet, virtual wallet unit 18 of computing device 12 maysend messages to a financial institution server 16 associated with thefinancial institution for authorization of the transactions.

In one example, the virtual wallet stored on computing device 12 mayinclude one or more virtual credit accounts, virtual banking accounts,virtual currency accounts, or other liquid virtual assets that can beused to purchase goods and services. In another example, the virtualwallet may include non-liquid virtual assets, such as virtual stock andbond certificates; virtual ownership titles for real estate,automobiles, and other property; and virtual event tickets or othervirtual documents having a monetary value. In some cases, the virtualwallet stored on computing device 12 may be used not just for basicfinancial transactions but also to authenticate the user's credentials.For example, the virtual wallet may include virtual identificationdocuments, such as a driver's license, health insurance card, and otherID documents. In this example, the virtual identification documentscould be used to verify the identity of the user when making a purchasevia the virtual wallet, or to verify the age of the user when purchasingalcohol or other age-restricted items.

In some instances, virtual wallet unit 18 is an application provided andsupported by the financial institution that holds the associatedfinancial assets, such as the financial institution associated withfinancial institution server 16. In other instances, virtual wallet unit18 is an application provided and supported by a third party applicationdeveloper. As another example, virtual wallet unit 18 may be implementedas part of a hardware unit of computing device 12. Examples of computingdevice 12 and virtual wallet unit 18 are described in more detail belowwith respect to FIG. 2.

Financial institution server 16 is associated with the financialinstitution. Financial institution server 16 may be part of acentralized or distributed system of one or more computing devices ofthe financial institution, such as such as desktop computers, laptops,workstations, wireless devices, network-ready appliances, file servers,print servers, or other devices. In the case of a distributed system ofthe financial institution, the system may include a distributed ledgeror distributed database, similar to block chain technology. Thefinancial institution may be a traditional bank or credit union. Thefinancial institution may hold one or more financial assets that arevirtualized for inclusion in virtual wallet account managed by virtualwallet unit 18 of computing device 12. The financial institution mayprovide authorization of transactions performed using the virtual walletstored on computing device 12. In some examples, the financialinstitution may provide and support virtual wallet unit 18 executed bycomputing device 12. Financial institution server 16 facilitatescommunication between computing device 12 and the financial institution.

Insurance server 14 is associated with the insurance company. Insuranceserver 14 may be part of a centralized or distributed system of one ormore computing devices of the insurance company, such as such as desktopcomputers, laptops, workstations, wireless devices, network-readyappliances, file servers, print servers, or other devices. In the caseof a distributed system of the insurance company, the system may includea distributed ledger or distributed database, similar to block chaintechnology. In some examples, the insurance company may be a stand-aloneinsurance company that offers a variety of insurance policies, such asautomobile insurance policies, homeowners' insurance policies, lifeinsurance policies, disability insurance policies, and virtual walletinsurance policies. In other examples, the insurance company may be partof the financial institution that holds the financial assets associatedwith virtual wallet unit 18 of computing device 12. If the insurancecompany is part of the financial institution, the insurance company mayonly offer insurance policies to cover products offered by the financialinstitution, e.g., virtual wallet insurance policies. Insurance server14 facilitates communication between computing device 12 and theinsurance company. An example of insurance server 14 is described inmore detail below with respect to FIG. 3.

As illustrated in FIG. 1, computing device 12 may communicate withinsurance server 14 and financial institution server 16 over a network10. In some examples, network 10 may comprise a private networkassociated with the financial institution of the insurance company. Inother examples, network 10 may comprise a public network, such as theInternet. Although illustrated as a single entity, network 10 maycomprise a combination of public and/or private networks. In someexamples, network 10 may comprise one or more of a wide area network(WAN) (e.g., the Internet), a local area network (LAN), a virtualprivate network (VPN), or another wired or wireless communicationnetwork. Computing device 12, insurance server 14, and financialinstitution server 16 may perform transactions with each other overnetwork 10 using “smart” contracts. The smart contracts may be softwarelogic executed by each of computing device 12, insurance server 14, andfinancial institution server 16 used to manage or facilitate elements ofthe transactions. The smart contracts may be publicly or privatelypermissioned.

In general, virtual wallets are a viable alternative for users who arewary of spreading their credit or bank account information acrossvarious websites. In just a few years, virtual wallets have gone mainstream, and more and more people are using virtual wallets to pay theirbills, shop online, book tickets, and the like, based on the comfort andease the virtual wallet brings to such transactions. For example, if auser wants to make a person-to-person transaction, using a virtualwallet is quicker than sending a check through the mail. Thus, virtualwallets may eventually replace physical wallets.

Like all technology, however, virtual wallets have security risks. Inthe above examples, the virtual wallet stored on computing device 12includes sensitive information that needs to be kept secure. The virtualwallet may be compromised if the virtual wallet is accessed by anunauthorized user, or if computing device 12 that stores the virtualwallet is lost, stolen, destroyed, or accessed by an authorized user.When the virtual wallet is compromised, the user may lose possession ofthe funds present in the virtual wallet.

Conventionally, unlike a stolen credit card, if a virtual wallet iscompromised, there was no way for a user to recover the value of anyvirtual financial assets included in the virtual wallet. This issue withconventional virtual wallets is rooted in the very technology that makesvirtual wallets so appealing to users, i.e., easy access to financialassets via a user device. For example, providing quick and easy accessto financial assets for the users may also make access relatively easyfor unauthorized users. In addition, storing the virtual wallets on auser device, which may be a mobile device such as “smart” phones and“smart” pad, may make theft, loss, and damage relatively common.

The techniques of this disclosure continuously protect the user ofcomputing device 12 from the risks associated with having a virtualwallet stored on computing device 12. Specifically, the techniquesinclude continuous communication between virtual wallet unit 18 runningon computing device 12 and an insurance server 14 associated with aninsurance company in order to insure the virtual wallet againstunauthorized access, theft, loss, or damage.

The virtual wallet stored on computing device 12 may be a single accountthat includes a plurality of virtual financial assets having individualassigned values. In this example, the virtual wallet has a value equalto the sum of the individual assigned values of the plurality of virtualfinancial assets. According to the techniques of this disclosure,virtual wallet unit 18 of computing device 12 is configured tocommunicate with insurance server 14 associated with the insurancecompany to establish an insurance policy for the virtual wallet. Theuser of the virtual wallet stored on computing device 12 may purchasethe insurance policy for the virtual wallet with an initial insuredamount based on the value of the virtual wallet. In some instances, theinsurance policy may have an insured amount equal to the total value ofthe virtual wallet. In other instances, the insurance policy may have aninsured amount equal to some percentage of the total value of thevirtual wallet. In still other instances, the insurance policy may havean insured amount equal to the assigned value of at least one of thevirtual financial assets included in the virtual wallet.

After the virtual wallet is insured, the assigned values of theplurality of virtual financial assets included in the virtual wallet maychange, e.g., as the virtual financial assets are used to purchase goodsor services or as market values fluctuate. Virtual wallet unit 18updates the value of the virtual wallet stored on computing device 12based on the changes to the assigned values of the plurality of virtualfinancial assets included in the virtual wallet.

The disclosed techniques enable continuous tracking of the virtualwallet stored on computing device 12 and updating of the insurancepolicy for the virtual wallet based on changes to the value of thevirtual wallet. Computing device 12 and insurance server 14 may usesmart contracts to track, modify, and update a ledger associated withthe insurance policy. The ledger associated with the insurance policymay be a centralized ledger or a distributed ledger. For example,computing device 12 and insurance server 14 may execute one or moresmart contracts to capture insurance details for the virtual walletstored on computing device 12, identify and validate the virtual walletstored on computing device 12 and the virtual financial assets includedin the virtual wallet that are to be insured, and record the insuredamount of the insurance policy for the virtual wallet into the ledgerfor the full duration and term of the insurance policy.

The smart contracts executed by computing device 12 and insurance server14 may include logic to automatically update the insured amount based onthe value of the virtual wallet that changes dynamically and update theinsurance policy with the updated insured amount. In addition, the smartcontracts may include logic to synchronize the collateral requirementsbetween insurance server 14 and virtual wallet unit 18 of computingdevice 12 to continually track the changes to the value of the virtualwallet and the insured amount of the insurance policy for the virtualwallet. Upon the virtual wallet being compromised, the smart contractsmay further include logic to finalize a last value of the virtual walletand close out the insurance policy with a ledger posting based on thelast value of the virtual wallet.

According to the techniques of this disclosure, virtual wallet unit 18is configured to send ad hoc messages to insurance server 14 reportingthe updated value of the virtual wallet. Virtual wallet unit 18 may sendthe ad hoc messages to insurance server 14 after each transactionperformed using the virtual wallet, according to a periodic interval, orupon the virtual wallet being compromised. In response to the messages,insurance server 14 updates the insured amount of the insurance policyfor the virtual wallet based on the updated value of the virtual wallet.In this way, if the virtual wallet is compromised, the insurance policyfor the virtual wallet has an insured amount equal to the most recentupdated value of the virtual wallet as recorded by insurance server 14.

The architecture of virtual wallet system 8 illustrated in FIG. 1 isshown for exemplary purposes only and should not be limited to thisarchitecture. Virtual wallet system 8 illustrated in FIG. 1 shows asingle computing device 12 in communication with a single insuranceserver 14 of the insurance company and a single financial institutionserver 16 of the financial institution. In other examples, virtualwallet system 8 may include multiple different computing devices havingvirtual wallet units that are each in communication one or moreinsurance servers of the insurance company and one or more financialinstitution servers of the financial institution. In still otherexamples, computing device 12 may be in communication with insuranceservers of more than one insurance company and/or in communication withfinancial institution servers of more than one financial institution.For example, virtual wallet unit 18 of computing device 12 may managemultiple virtual wallet accounts that include virtual financial assetscorresponding to financial assets held by more than one financialinstitution. In this example, the multiple virtual wallet accountsmanaged by virtual wallet unit 18 of computing device 12 may be insuredby multiple different insurance companies.

FIG. 2 is a block diagram illustrating an example of computing device 12including virtual wallet unit 18 configured to communicate withinsurance server 14, in accordance with the techniques of thisdisclosure. The architecture of computing device 12 illustrated in FIG.2 is shown for exemplary purposes only and computing device 12 shouldnot be limited to this architecture. In other examples, computing device12 may be configured in a variety of ways.

As shown in the example of FIG. 2, computing device 12 includes one ormore processors 24, one or more interfaces 26, and one or more storageunits 28. Computing device 12 also includes virtual wallet unit 18,which may be implemented as program instructions and/or data stored instorage units 28 and executable by processors 24 or implemented as oneor more hardware units or devices of computing device 12. Storage units28 of computing device 12 may also store an operating system and a userinterface unit executable by processors 24. The operating system storedin storage units 28 may control the operation of components of computingdevice 12. Although not shown in FIG. 2, the components, units ormodules of computing device 12 are coupled (physically, communicatively,and/or operatively) using communication channels for inter-componentcommunications. In some examples, the communication channels may includea system bus, a network connection, an inter-process communication datastructure, or any other method for communicating data.

Processors 24, in one example, may comprise one or more processors thatare configured to implement functionality and/or process instructionsfor execution within computing device 12. For example, processors 24 maybe capable of processing instructions stored by storage units 28.Processors 24 may include, for example, microprocessors, digital signalprocessors (DSPs), application specific integrated circuits (ASICs),field-programmable gate array (FPGAs), or equivalent discrete orintegrated logic circuitry, or a combination of any of the foregoingdevices or circuitry.

Storage units 28 may be configured to store information within computingdevice 12 during operation. Storage units 28 may include acomputer-readable storage medium or computer-readable storage device. Insome examples, storage units 28 include one or more of a short-termmemory or a long-term memory. Storage units 28 may include, for example,random access memories (RAM), dynamic random access memories (DRAM),static random access memories (SRAM), magnetic discs, optical discs,flash memories, or forms of electrically programmable memories (EPROM)or electrically erasable and programmable memories (EEPROM). In someexamples, storage units 28 are used to store program instructions forexecution by processors 24. Storage units 28 may be used by software orapplications running on computing device 12 (e.g., virtual wallet unit18) to temporarily store information during program execution.

Computing device 12 may utilize interfaces 26 to communicate withexternal devices via one or more networks, e.g., network 10 from FIG. 1.Interfaces 26 may be network interfaces, such as Ethernet interfaces,optical transceivers, radio frequency (RF) transceivers, or any othertype of devices that can send and receive information. Other examples ofsuch network interfaces may include Wi-Fi or Bluetooth radios. In someexamples, computing device 12 utilizes interfaces 26 to wirelesslycommunicate with an external device such as insurance server 14 orfinancial institution server 16.

Computing device 12 may also utilize interfaces 26 to communicate withusers of computing device 12. Interfaces 26 may be user interface (UI)devices configured to operate as both input devices and output devices.For example, the UI devices may be configured to receive tactile, audio,or visual input from a user of computing device 12. In addition toreceiving input from a user, the UI devices may be configured to provideoutput to a user using tactile, audio, or video stimuli. In one example,the UI devices may be configured to output content for display, e.g., agraphical user interface (GUI), in accordance with a user interface unitstored in storage units 28. In this example, the UI devices may includea presence-sensitive display that displays a GUI and receives input froma user using capacitive, inductive, and/or optical detection at or nearthe presence sensitive display. Other examples of the UI devices includea mouse, a keyboard, a voice responsive system, video camera, microphoneor any other type of device for detecting a command from a user, or asound card, a video graphics adapter card, or any other type of devicefor converting a signal into an appropriate form understandable tohumans or machines. Additional examples of the UI devices include aspeaker, a cathode ray tube (CRT) monitor, a liquid crystal display(LCD), organic light emitting diode (OLED), or any other type of devicethat can generate intelligible output to a user.

Computing device 12 may include additional components that, for clarity,are not shown in FIG. 2. For example, computing device 12 may include abattery to provide power to the components of computing device 12.Similarly, the components of computing device 12 shown in FIG. 2 may notbe necessary in every example of computing device 12.

In the example illustrated in FIG. 2, virtual wallet unit 18 includes atransaction unit 30, an insurance unit 34, and a virtual wallet 36.Virtual wallet 36 may comprise a single account that includes aplurality of virtual financial assets having individual assigned values.Each of the virtual financial assets included in virtual wallet 36corresponds to a financial asset held by a financial institution. Inother examples, virtual wallet unit 18 may include multiple virtualwallet accounts that are associated with different types of virtualfinancial assets, or multiple virtual wallet accounts that areassociated with different financial institutions.

In general, virtual wallet 36 may be setup in virtual wallet unit 18 bya user of computing device 12. As an example, the user may input accountor other identifying information into virtual wallet unit 18 for each ofthe virtual financial assets included in virtual wallet 36. Each of thevirtual financial assets may be stored on computing device 12 as objectshaving a digital certificate. Virtual wallet unit 18 of computing device12 may then exchange public/private key pairs with financial institutionserver 16 of the financial institution for each of the virtual financialassets in virtual wallet 36 to facilitate encryption and decryption ofmessages associated with the given one of the virtual financial assets.In addition, computing device 12 may execute a smart contract for eachof the virtual financial assets to establish, track, and update anindividual assigned value for each of the virtual financial assets. Thesmart contracts may manage or facilitate elements of transactionsbetween virtual wallet 36 of computing device 12 and financialinstitution server 16 of the financial institution.

In the illustrated example, virtual wallet 36 includes a virtual creditaccount 40, a virtual checking account 42, a virtual currency account44, a virtual stock certificate 46, a virtual property title 48, and avirtual ID document 50. Virtual property title 48 may comprise a titleof ownership for real estate, automobiles, or other property. Virtual IDdocument 50 may comprise a driver's license, a health insurance card, orother ID documents. In other examples, virtual wallet 36 may includemore or fewer virtual financial assets. For example, virtual wallet 36may include one or more additional virtual credit accounts, virtualbanking accounts, virtual currency accounts, or other liquid virtualassets that can be used to purchase goods and services. As anotherexample, virtual wallet 36 may include one or more additional non-liquidvirtual assets, such as virtual stock and bond certificates, virtualproperty titles, and virtual event tickets or other virtual documentshaving a monetary value.

Each of the virtual financial assets included in virtual wallet 36 hasan associated assigned value. In one example, virtual credit account 40,virtual checking account 42, and virtual currency account 44 may haveassigned values equal an amount of funds available for use in theaccounts. In another example, virtual stock certificate 46 and virtualproperty title 48 may have assigned values equal to an assessed value ofthe asset. In a further example, ID document 50 may have an assignedvalue equal to a replacement cost for the ID document. The value ofvirtual wallet 36 is equal to the sum of the individual assigned valuesof the plurality of virtual financial assets included in virtual wallet36. Virtual wallet unit 18 records the value of virtual wallet 36, e.g.,virtual wallet unit 18 may store the value in storage units 28. Forexample, computing device 12 may execute the smart contracts for thevirtual financial assets to establish the individual assigned values ofthe virtual financial assets included in virtual wallet 36 and toestablish the value of virtual wallet 36.

Transaction unit 30 of virtual wallet unit 18 is configured to performonline transactions using one or more of the virtual financial assetsincluded in virtual wallet 36. In one example, transaction unit 30 mayfacilitate the purchase of goods or services using virtual wallet 36 viaeither a website or a point-of-sale device configured to receive onlinepayments. For example, upon receiving a request from a merchant for thepurchase of goods, transaction unit 30 of virtual wallet unit 18 maysend details of the request, e.g., the price of the goods and themerchant's name and location, to financial institution server 16 of thefinancial institution. In response, transaction unit 30 may receiveauthorization from financial institution server 16 of the financialinstitution to perform the requested transaction using one of thevirtual financial assets included in virtual wallet 36. In some cases,the financial institution may authorize one or more of the virtualfinancial assets included in virtual wallet 36 to complete the requestedtransaction. In this case, the user of computing device 12 may select apreferred one of the authorized virtual financial assets to complete thetransaction. In other cases, the financial institution may provideauthentication for only a specific one of the virtual financial assetsto complete the requested transaction. In either case, upon receivingauthorization from the financial institution, transaction unit 30 thencommunicates with the merchant to complete the requested transaction.

In another example, transaction unit 30 may facilitate the transfer offunds from virtual wallet 36 to another person or entity. In a furtherexample, transaction unit 30 may facilitate the sale or transfer of oneor more of the virtual financial assets included in virtual wallet 36.In these examples, transaction unit 30 may operate substantially similaras described above to request and receive authentication for thetransactions from the financial institution.

According to the disclosed techniques, insurance unit 34 of virtualwallet unit 18 is configured to establish an insurance policy forvirtual wallet 36 with an insurance company, and continuously trackvirtual wallet 36 in order to update the insurance policy. Once a userof computing device 12 sets up virtual wallet 36, insurance unit 34 maysend a request to insurance server 14 of the insurance company toestablish an insurance policy for virtual wallet 36. The insurancepolicy request may include details of virtual wallet 36, includingaccount or other identifying information and the assigned values foreach of the virtual financial assets included in virtual wallet 36. Theinsurance policy request also includes the value of virtual wallet 36.

In response to the insurance policy request and payment of a premium bythe user of computing device 12, the insurance company may issue therequested insurance policy. Once the insurance policy is issued,insurance unit 34 may receive an indication from insurance server 14 ofthe insurance company that the insurance policy has been issued and hasan insured amount based on the value of virtual wallet 36. In oneexample, the insurance policy may have an insured amount that is equalto the total value of virtual wallet 36. In other examples, theinsurance policy may have an insured amount that is some percentage ofthe total value of virtual wallet 36, e.g., 80% of the value. In stillother examples, the insurance policy may have an insured amount that isequal to the assigned value of at least one of the virtual financialassets included in virtual wallet 36.

Over time, the individual assigned values of the virtual financialassets included in virtual wallet 36 may change. For example, the amountof funds available for use in any of virtual credit account 40, virtualchecking account 42, or virtual currency account 44 may decrease asgoods or services are purchased or increase as more funds are depositedinto the accounts. As another example, the assessed value of virtualstock certificate 46 or virtual property title 48 may change within agiven day, month, or other period of time. When such a change occurs,virtual wallet unit 18 updates the value of virtual wallet 36, e.g.,virtual wallet unit 18 records the update in storage units 28. Forexample, computing device 12 may execute the smart contracts for thevirtual financial assets to update the individual assigned values of thevirtual financial assets included in virtual wallet 36, and, in turn, toupdate the value of virtual wallet 36.

In one example, virtual wallet unit 18 may update the value of virtualwallet 36 after each transaction performed by transaction unit 30 thateither reduces or increases an amount of funds available for use incredit account 40, checking account 42, or currency account 44. Inanother example, virtual wallet unit 18 may update the value of virtualwallet 36 on a periodic basis, e.g., once per day, once per month, oronce per quarter, to reflect changes to the assessed values of stockcertificate 46 or property title 48.

In accordance with the techniques of this disclosure, insurance unit 34of virtual wallet unit 18 sends a message to insurance server 14 of theinsurance company reporting the updated value of virtual wallet 36. Forexample, insurance unit 34 may send the message reporting the updatedvalue of virtual wallet 36 after each transaction performed bytransaction unit 30. In the example where the insurance company and thefinancial institution are the same entity, the message reporting theupdated value of virtual wallet 36 to the insurance company may be astandalone message or may be included in a message already sent to thefinancial institution reporting successful completion of thetransaction. In another example, insurance unit 34 may send the messagereporting the updated value of virtual wallet 36 according to a periodicinterval, e.g., once per day, once per month, one per quarter, or someother period of time.

In a further example, insurance unit 34 may send the message reportingthe updated value of virtual wallet 36 once a user of computing device12 reports to the insurance company that virtual wallet 36 has beencompromised. In the example where an unauthorized person accessesvirtual wallet 36 or where computing device 12 is lost, stolen, oraccessed by an unauthorized person, insurance unit 34 may be configuredto still send the message reporting the updated value of virtual wallet36. For example, insurance server 14 of the insurance company may send aquery to computing device 12 requesting the updated value of virtualwallet 36. In the example where computing device 12 is destroyed,insurance unit 34 within computing device 12 may be unable to send themessage to the insurance company. Instead, the insurance company viainsurance server 14 may need to determine the updated value of virtualwallet 36 from the financial institution.

In response to the reported updated value of virtual wallet 36, theinsurance company may update the insured amount of the insurance policyfor virtual wallet 36. In this way, the insurance policy for virtualwallet 36 accurately reflects a current monetary value of virtual wallet36. Once the insurance policy is updated, insurance unit 34 may receivean indication from insurance server 14 of the insurance company that theinsured amount of the insurance policy has been updated based on theupdated value of virtual wallet 36. In some examples, computing device12 may execute the smart contracts for the virtual financial assets tofacilitate the transaction of updating the value of virtual wallet 36with insurance server 14 of the insurance company.

Virtual wallet 36 may be compromised when an unauthorized personaccesses virtual wallet 36 or when computing device 12 is lost, stolen,destroyed, or accessed by an unauthorized person. Upon virtual wallet 36being compromised, the user of computing device 12 may contact theinsurance company to report the issue and make a claim against theinsurance policy for virtual wallet 36. The user of computing device 12may then receive payment on the claim of the updated insured amount ofthe insurance policy.

FIG. 3 is a block diagram illustrating an example of insurance server 14including a virtual wallet insurance unit 60 configured to manage aninsurance policy for virtual wallet 36 stored on computing device 12, inaccordance with the techniques of this disclosure. The architecture ofinsurance server 14 illustrated in FIG. 3 is shown for exemplarypurposes only and insurance server 14 should not be limited to thisarchitecture. In other examples, insurance server 14 may be configuredin a variety of ways.

Insurance server 14 is associated with an insurance company. In someexamples, the insurance company may be part of a financial institutionthat supports virtual wallet unit 18 of computing device 12. Insuranceserver 14 may be part of a centralized or distributed system of one ormore computing devices, such as such as desktop computers, laptops,workstations, wireless devices, network-ready appliances, file servers,print servers, or other devices.

As shown in the example of FIG. 3, insurance server 14 includes one ormore processors 54, one or more interfaces 56, and one or more storageunits 58. Insurance server 14 also includes virtual wallet insuranceunit 60, which may be implemented as program instructions and/or datastored in storage units 58 and executable by processors 54 orimplemented as one or more hardware units or devices of insurance server14. Storage units 58 of insurance server 14 may also store an operatingsystem executable by processors 54. The operating system stored instorage units 58 may control the operation of components of insuranceserver 14. Although not shown in FIG. 3, the components, units ormodules of insurance server 14 are coupled (physically, communicatively,and/or operatively) using communication channels for inter-componentcommunications. In some examples, the communication channels may includea system bus, a network connection, an inter-process communication datastructure, or any other method for communicating data.

Processors 54, in one example, are configured to implement functionalityand/or process instructions for execution within insurance server 14.For example, processors 54 may be capable of processing instructionsstored by storage units 58. Processors 54 may include, for example,microprocessors, digital signal processors (DSPs), application specificintegrated circuits (ASICs), field-programmable gate array (FPGAs), orequivalent discrete or integrated logic circuitry, or a combinationthereof.

Storage units 58 may be configured to store information within insuranceserver 14 during operation. Storage units 58 may include acomputer-readable storage medium or computer-readable storage device. Insome examples, storage units 58 include one or more of a short-termmemory or a long-term memory. Storage units 58 may include, for example,random access memories (RAM), dynamic random access memories (DRAM),static random access memories (SRAM), magnetic discs, optical discs,flash memories, or forms of electrically programmable memories (EPROM)or electrically erasable and programmable memories (EEPROM). In someexamples, storage units 58 are used to store program instructions forexecution by processors 54. Storage units 58 may be used by software orapplications running on processors 54 of insurance server 14 (e.g.,virtual wallet insurance unit 60) to temporarily store informationduring program execution.

Insurance server 14 may utilize interfaces 56 to communicate withexternal devices via one or more networks, e.g., network 10 from FIG. 1.Interfaces 56 may be network interfaces, such as Ethernet interfaces,optical transceivers, radio frequency (RF) transceivers, or any othertype of devices that can send and receive information. Other examples ofsuch network interfaces may include Wi-Fi or Bluetooth radios. In someexamples, insurance server 14 utilizes interfaces 56 to wirelesslycommunicate with an external device such as computing device 12 orfinancial institution server 16.

In the example illustrated in FIG. 3, virtual wallet insurance unit 60of insurance server 14 includes a policy database 62, a policy unit 64,and a claim unit 66. According to the disclosed techniques, policy unit64 of virtual wallet insurance unit 60 may establish insurance policiesfor virtual wallets with the associated insurance company. Policydatabase 62 may then maintain one or more virtual wallet insurancepolicies issued by the insurance company. For example, insurance server14 may execute a smart contract for each of the virtual wallet insurancepolicies to establish, track, and update an insured amount of theinsurance policies. The smart contracts may manage or facilitateelements of transactions between virtual wallet unit 18 of computingdevice 12 and virtual wallet insurance unit 60 of insurance server 14. Agiven virtual wallet insurance policy in policy database 62 may be for avirtual wallet account and/or for a computing device that stores thevirtual wallet account. In this way, a user of the computing device mayhave insurance coverage regardless of whether the virtual wallet accountitself is compromised or the computing device as a whole is compromised.

As one example, virtual wallet insurance unit 60 may receive a requestfor an insurance policy for virtual wallet 36 stored on computing device12 from FIG. 2. The insurance policy request may include details ofvirtual wallet 36, including account or other identifying informationand the assigned values for each of the virtual financial assetsincluded in virtual wallet 36. The insurance policy request alsoincludes the value of virtual wallet 36.

Policy unit 64 of virtual wallet insurance unit 60 then establishes therequested insurance policy for virtual wallet 36 with the insurancecompany. Upon payment of a premium by the user of computing device 12,the insurance company may issue the requested insurance policy forvirtual wallet 36 having an insured amount based on the value of virtualwallet 36. For example, insurance server 14 may execute a smart contractfor the virtual wallet insurance policy to establish the insured amountof the insurance policy. In one example, the insurance policy may havean insured amount that is equal to the value of virtual wallet 36. Inother examples, the insurance policy may have an insured amount that issome percentage of the value of virtual wallet 36, e.g., 80% of thevalue. In still other examples, the insurance policy may have an insuredamount that is equal to the assigned value of at least one of thevirtual financial assets included in virtual wallet 36.

Policy unit 64 may store the issued insurance policy for virtual wallet36 in policy database 62 with the insured amount based on the value ofvirtual wallet 36. In one example, policy database 62 may include aledger associated with the insurance policy for virtual wallet 36. Theledger associated with the insurance policy may be a centralized ledgeror a distributed ledger. In this example, policy unit 64 stores theinsurance policy for virtual wallet 36 in policy database 62 byrecording the insured amount of the insurance policy as an initial entryin the ledger. Virtual wallet insurance unit 60 of insurance server 14may then send an indication to computing device 12 that the insurancepolicy has been issued and has an insured amount based on the value ofvirtual wallet 36.

As described in more detail above, the value of virtual wallet 36 oncomputing device 12 may be updated when a change occurs to the assignedvalue of at least one of the virtual financial assets included invirtual wallet 36. In accordance with the techniques of this disclosure,virtual wallet insurance unit 60 of insurance server 14 receives amessage from computing device 12 reporting the updated value of virtualwallet 36. For example, virtual wallet insurance unit 60 may receive themessage from computing device 12 reporting the updated value of virtualwallet 36 after each transaction performed using virtual wallet 36. Inthe example where the insurance company and the financial institutionare the same entity, the message reporting the updated value of virtualwallet 36 may be a standalone message or may be included in a messagealready sent to the financial institution reporting successfulcompletion of the transaction. In another example, virtual walletinsurance unit 60 may receive the message from computing device 12reporting the updated value of virtual wallet 36 according to a periodicinterval, e.g., once per day, month, quarter, or some other period oftime.

In a further example, virtual wallet insurance unit 60 may receive themessage from computing device 12 reporting the updated value of virtualwallet 36 along with a report from a user of computer device 12 thatvirtual wallet 36 has been compromised. In the example where anunauthorized person accesses virtual wallet 36 or where computing device12 is lost, stolen, or accessed by an unauthorized person, virtualwallet insurance unit 60 may still receive the message reporting theupdated value of virtual wallet 36 from computing device 12. Forexample, virtual wallet insurance unit 60 may send a query to computingdevice 12 requesting the updated value of virtual wallet 36. In theexample where computing device 12 is destroyed, computing device 12 maybe unable to send the message to virtual wallet insurance unit 60.Instead, virtual wallet insurance unit 60 may need to determine theupdated value of virtual wallet 36 from the financial institution.

In response to receiving the message from computing device 12, policyunit 64 of virtual wallet insurance unit 60 may update the insuredamount of the insurance policy for virtual wallet 36 based on thereported updated value of virtual wallet 36. For example, insuranceserver 14 may execute the smart contract for the virtual walletinsurance policy to update the insured amount of the insurance policy.As discussed above, policy database 62 may maintain the insurance policyfor virtual wallet 36 by recording the initial insured amount of theinsurance policy as an initial entry in a ledger associated with theinsurance policy. The ledger associated with the insurance policy may bea centralized ledger or a distributed ledger. Policy unit 64 may thenupdate the insured amount of the insurance policy for virtual wallet 36by recording the updated insured amount of the insurance policy as a newentry in the ledger, without overwriting any previous entries in theledger. The insured amount of the insurance policy for virtual wallet36, therefore, may be managed in a manner that is similar to block chaintechnology.

In this way, the insurance policy for virtual wallet 36 stored in policydatabase 62 accurately reflects a current monetary value of virtualwallet 36. Once the insurance policy is updated, virtual walletinsurance unit 60 may send an indication to computing device 12 that theinsured amount of the insurance policy has been updated based on theupdated value of virtual wallet 36. In some examples, insurance server14 may execute the smart contract for the virtual wallet insurancepolicy to facilitate the transaction of updating the insured amount ofthe insurance policy.

In some cases, virtual wallet insurance unit 60 of insurance server 14may also validate the messages received from computing device 12reporting the updated value of virtual wallet 36. This validation stepmay be used to ensure that the reported updated value of virtual wallet36 is accurate and not falsified information. As one example, virtualwallet insurance unit 60 may receive a ledger of transactions performedusing virtual wallet 36 from financial institution server 16 of theassociated financial institution. The ledger may be received fromfinancial institution server 16 on a periodic basis, e.g., daily,weekly, monthly, or quarterly. Virtual wallet insurance unit 60 may thenvalidate the messages received from computing device 12 by comparing thereported updated value of virtual wallet 36 to the transactions in theledger as an audit check. The messages received from computing device 12may be validated when the updated value of virtual wallet 36 can bereconciled with the transactions in the ledger.

Virtual wallet 36 may be compromised when an unauthorized personaccesses virtual wallet 36 or when computing device 12 is lost, stolen,destroyed, or accessed by an unauthorized person. Upon virtual wallet 36being compromised, the user of computing device 12 may contact theinsurance company to report the issue and make a claim against theinsurance policy for virtual wallet 36. Claim unit 66 of virtual walletinsurance unit 60 may process the claim with the insurance company forpayment of the updated insured amount of the insurance policy forvirtual wallet 36 to the user of computing device 12. In some examples,insurance server 14 may execute the smart contract for the virtualwallet insurance policy to facilitate the transaction of processing theclaim against the insurance policy.

In some cases, the user of computing device 12 may not immediatelyrealize that virtual wallet 36 has been compromised. Financialinstitution server 16 of the financial institution, however, may be ableto recognize suspicious or out-of-character behavior for the user, e.g.large purchases or transfers of funds, purchases from out-of-statemerchants, or a lack purchases, that may indicate that virtual wallet 36has been compromised. Financial institution server 16 may report thissuspicious behavior to the user of computing device 12 for approval. Ifthe user of computing device 12 does not approve the suspiciousbehavior, either the user of computing device 12 or financialinstitution server 16 may report the issue to insurance server 14 of theinsurance company. The user of computing device 12 may then contact theinsurance company to make a claim against the insurance policy forvirtual wallet 36.

FIG. 4 is a flowchart illustrating an example operation of a computingdevice having an insured virtual wallet, in accordance with thetechniques of this disclosure. The example operation of FIG. 4 isdescribed with respect to computing device 12 having virtual wallet unit18 from FIG. 2. Computing device 12 is a user device and, as illustratedin FIG. 1, is in communication with insurance server 14 associated withan insurance company and financial institution server 16 associated witha financial institution. In some examples, the financial institution andthe insurance company may be the same entity.

Computing device 12 stores a virtual wallet 36 that includes at leastone virtual financial asset having an assigned value (90). Virtualwallet unit 18 comprises an application executed by processors 24 ofcomputing device 12 that allows a user of computing device 12 to performonline transactions using the virtual financial assets included invirtual wallet 36. Each of the virtual financial assets included invirtual wallet 36, e.g., virtual credit account 40, virtual checkingaccount 42, virtual currency account 44, virtual stock certificate 46,virtual property title 48, and virtual identification document 50,corresponds to a financial asset held by a financial institution. Eachof the virtual financial assets included in virtual wallet 36 has anassociated assigned value. In the example illustrated in FIG. 2, virtualwallet 36 comprises a single virtual wallet account that includes theplurality of virtual financial assets having individual assigned values.In this example, the value of virtual wallet 36 is equal to the sum ofthe individual assigned values of the plurality of virtual financialassets.

According to the disclosed techniques, virtual wallet unit 18communicates with an insurance company via insurance server 14 toestablish an insurance policy for virtual wallet 36 having an insuredamount based on the value of virtual wallet 36 (92). Virtual wallet unit18 may establish the insurance policy by sending a request to theinsurance company for the insurance policy that includes the value ofvirtual wallet 36. Upon payment of a premium for the insurance policy,virtual wallet unit 18 may receive an indication from the insurancecompany of the insured amount of the insurance policy based on the valueof virtual wallet 36.

When a change occurs to the assigned value of at least one of thevirtual financial assets included in virtual wallet 36, virtual walletunit 18 updates the value of virtual wallet 36 (94). Virtual wallet unit18 then sends a message to the insurance company via insurance server 14reporting the updated value of virtual wallet 36 (96). For example,virtual wallet unit 18 may send the message reporting the updated valueof virtual wallet 36 after each transaction performed by virtual walletunit 18. In another example, virtual wallet unit 18 may send the messagereporting the updated value of virtual wallet 36 according to a periodicinterval, e.g., once per day, month, quarter, or some other period oftime. In a further example, virtual wallet unit 18 may send the messagereporting the updated value of virtual wallet 36 once a user ofcomputing device 12 reports to the insurance company that virtual wallet36 has been compromised. After sending the reporting message to theinsurance company, virtual wallet unit 18 receives an indication fromthe insurance company of an updated insured amount of the insurancepolicy based on the updated value of virtual wallet 36 (98). In someexamples, computing device 12 may execute smart contracts for thevirtual financial assets included in virtual wallet 36 to facilitate thetransaction of updating the value of virtual wallet 36 with insuranceserver 14 of the insurance company (94, 96, and 98).

FIG. 5 is a flowchart illustrating an example operation of an insuranceserver managing an insurance policy for a virtual wallet, in accordancewith techniques of this disclosure. The example operation of FIG. 5 isdescribed with respect to insurance server 14 having virtual walletinsurance unit 60 from FIG. 3. Insurance server 14 is associated with aninsurance company and, as illustrated in FIG. 1, is in communicationwith computing device 12 executing virtual wallet unit 18. In someexamples, the insurance company may be a financial institution.

Insurance server 14 receives a request from computing device 12 for aninsurance policy for virtual wallet 36 stored on computing device 12with the request including a value of virtual wallet 36 (100). Asdescribed above, virtual wallet 36 includes at least one virtualfinancial asset having an assigned value that corresponds to a financialasset held by a financial institution. In the example illustrated inFIG. 2, virtual wallet 36 comprises a single virtual wallet account thatincludes a plurality of virtual financial assets having individualassigned values. In this example, the value of virtual wallet 36 isequal to the sum of the individual assigned values of the plurality ofvirtual financial assets.

In response to the request, policy unit 64 of virtual wallet insuranceunit 60 establishes the requested insurance policy for virtual wallet 36with the insurance company. Upon payment of a premium for the insurancepolicy, virtual wallet insurance unit 60 stores the insurance policy forvirtual wallet 36 in policy database 62 with an insured amount based onthe value of virtual wallet 36 (102). Insurance server 14 may send anindication to computing device 12 of the insured amount of the insurancepolicy for virtual wallet 36.

As described in more detail above, the value of virtual wallet 36 oncomputing device 12 may be updated when a change occurs to the assignedvalue of at least one of the virtual financial assets included invirtual wallet 36. Insurance server 14 receives a message from computingdevice 12 reporting the updated value of virtual wallet 36 (104). Forexample, insurance server 14 may receive the message from computingdevice 12 reporting the updated value of virtual wallet 36 after eachtransaction performed using virtual wallet 36. In another example,insurance server 14 may receive the message from computing device 12reporting the updated value of virtual wallet 36 according to a periodicinterval, e.g., once per day, month, quarter, or some other period oftime. In a further example, insurance server 14 may receive the messagefrom computing device 12 reporting the updated value of virtual wallet36 along with a report from a user of computer device 12 that virtualwallet 36 has been compromised.

In response to the message from computing device 12, virtual walletinsurance unit 60 of insurance server 14 updates the insured amount ofvirtual wallet 36 based on the updated value of the virtual wallet(106). In one example, policy database 62 within insurance server 14 mayinclude a ledger associated with the insurance policy for virtual wallet36. The ledger associated with the insurance policy may be a centralizedledger or a distributed ledger. In this example, virtual walletinsurance unit 60 stores the insurance policy for virtual wallet 36 inpolicy database 62 by recording the insured amount of the insurancepolicy as an initial entry in the ledger. Virtual wallet insurance unit60 may then update the insured amount of the insurance policy forvirtual wallet 36 by recording the updated insured amount of theinsurance policy as a new entry in the ledger, without overwriting anyprevious entries in the ledger. In this way, the insured amount of theinsurance policy for virtual wallet 36 may be managed in a manner thatis similar to block chain technology. In some examples, insurance server14 may execute a smart contract for the virtual wallet insurance policyto facilitate the transaction of updating the insured amount of theinsurance policy (104, 106).

Virtual wallet 36 may be compromised when an unauthorized personaccesses virtual wallet 36 or when computing device 12 is lost, stolen,destroyed, or accessed by an unauthorized person. In the case wherevirtual wallet 36 running on computing device 12 has not beencompromised (NO branch of 108), insurance server 14 continues to receivemessages from computing device 12 reporting the updated value of virtualwallet 36 (104) and update the insured amount of the insurance policybased on the updated value of virtual wallet 36 (106). In the case wherevirtual wallet 36 running on computing device 12 is compromised (YESbranch of 108), insurance server 14 may receive a claim from a user ofcomputing device 12 against the insurance policy for the virtual wallet(110). In this case, claim unit 66 of virtual wallet insurance unit 60may process the claim with the insurance company for payment of theupdated insured amount of the insurance policy for virtual wallet 36 tothe user of computing device 12 (112). In some examples, insuranceserver 14 may execute the smart contract for the virtual walletinsurance policy to facilitate the transaction of processing the claimagainst the insurance policy (110, 112).

It is to be recognized that depending on the example, certain acts orevents of any of the techniques described herein can be performed in adifferent sequence, may be added, merged, or left out altogether (e.g.,not all described acts or events are necessary for the practice of thetechniques). Moreover, in certain examples, acts or events may beperformed concurrently, e.g., through multi-threaded processing,interrupt processing, or multiple processors, rather than sequentially.

In one or more examples, the functions described may be implemented inhardware, software, firmware, or any combination thereof. If implementedin software, the functions may be stored on or transmitted over acomputer-readable medium as one or more instructions or code, andexecuted by a hardware-based processing unit. Computer-readable mediamay include computer-readable storage media, which corresponds to atangible medium such as data storage media, or communication mediaincluding any medium that facilitates transfer of a computer programfrom one place to another, e.g., according to a communication protocol.In this manner, computer-readable media generally may correspond to (1)tangible computer-readable storage media which is non-transitory or (2)a communication medium such as a signal or carrier wave. Data storagemedia may be any available media that can be accessed by one or morecomputers or one or more processors to retrieve instructions, codeand/or data structures for implementation of the techniques described inthis disclosure. A computer program product may include acomputer-readable medium.

By way of example, and not limitation, such computer-readable storagemedia can comprise RAM, ROM, EEPROM, CD-ROM or other optical diskstorage, magnetic disk storage, or other magnetic storage devices, flashmemory, or any other medium that can be used to store desired programcode in the form of instructions or data structures and that can beaccessed by a computer. Also, any connection is properly termed acomputer-readable medium. For example, if instructions are transmittedfrom a website, server, or other remote source using a coaxial cable,fiber optic cable, twisted pair, digital subscriber line (DSL), orwireless technologies such as infrared, radio, and microwave, then thecoaxial cable, fiber optic cable, twisted pair, DSL, or wirelesstechnologies such as infrared, radio, and microwave are included in thedefinition of medium. It should be understood, however, thatcomputer-readable storage media and data storage media do not includeconnections, carrier waves, signals, or other transitory media, but areinstead directed to non-transitory, tangible storage media. Disk anddisc, as used herein, includes compact disc (CD), laser disc, opticaldisc, digital versatile disc (DVD), floppy disk and Blu-ray disc, wheredisks usually reproduce data magnetically, while discs reproduce dataoptically with lasers. Combinations of the above should also be includedwithin the scope of computer-readable media.

Instructions may be executed by one or more processors, such as one ormore digital signal processors (DSPs), general purpose microprocessors,application specific integrated circuits (ASICs), field programmablegate arrays (FPGAs), or other equivalent integrated or discrete logiccircuitry, as well as any combination of such components. Accordingly,the term “processor,” as used herein may refer to any of the foregoingstructures or any other structure suitable for implementation of thetechniques described herein. In addition, in some aspects, thefunctionality described herein may be provided within dedicated hardwareand/or software modules. Also, the techniques could be fully implementedin one or more circuits or logic elements.

The techniques of this disclosure may be implemented in a wide varietyof devices or apparatuses, including a wireless communication device orwireless handset, a microprocessor, an integrated circuit (IC) or a setof ICs (e.g., a chip set). Various components, modules, or units aredescribed in this disclosure to emphasize functional aspects of devicesconfigured to perform the disclosed techniques, but do not necessarilyrequire realization by different hardware units. Rather, as describedabove, various units may be combined in a hardware unit or provided by acollection of interoperative hardware units, including one or moreprocessors as described above, in conjunction with suitable softwareand/or firmware.

Various examples have been described. These and other examples arewithin the scope of the following claims.

The invention claimed is:
 1. A method comprising: storing, by acomputing device, a virtual wallet that includes at least one virtualfinancial asset having an assigned value; establishing, by the computingdevice and with an insurance company, an insurance policy for thevirtual wallet with an insured amount based on a value of the virtualwallet, the value of the virtual wallet being equal to the assignedvalue of the at least one virtual financial asset included in thevirtual wallet, wherein establishing the insurance policy comprisesexecuting at least one smart contract associated with the insurancepolicy for the virtual wallet; continuously tracking, by the computingdevice, changes to the value of the virtual wallet based on changes tothe assigned value of the at least one virtual financial asset includedin the virtual wallet, wherein continuously tracking the changes to thevalue of the virtual wallet comprises recording the changes to the valueof the virtual wallet in a ledger associated with the at least one smartcontract; in response to the tracked changes, sending, by the computingdevice to the insurance company, a message reporting an updated value ofthe virtual wallet; and receiving, by the computing device and from theinsurance company in response to the message, an indication of anupdated insured amount of the insurance policy based on the updatedvalue of the virtual wallet.
 2. The method of claim 1, wherein thevirtual wallet comprises a single account that includes a plurality ofvirtual financial assets having individual assigned values, the value ofthe virtual wallet being equal to the sum of the individual assignedvalues of the plurality of virtual financial assets included in thevirtual wallet; and wherein continuously tracking the changes to thevalue of the virtual wallet comprises continuously tracking the changesto the value of the virtual wallet based on changes to one or more ofthe individual assigned values of the plurality of virtual financialassets.
 3. The method of claim 1, wherein sending the message reportingthe updated value of the virtual wallet comprises at least one of:sending the message after each transaction performed using the virtualwallet; sending the message according to a periodic interval; or sendingthe message upon the virtual wallet being compromised.
 4. The method ofclaim 1, wherein establishing the insurance policy for the virtualwallet comprises: sending, by the computing device and to the insurancecompany, a request for the insurance policy for the virtual wallet,wherein the request includes the value of the virtual wallet; and uponpayment of a premium for the insurance policy, receiving, by thecomputing device and from the insurance company, an indication of theinsured amount of the insurance policy based on the value of the virtualwallet.
 5. The method of claim 1, wherein the at least one virtualfinancial asset included in the virtual wallet corresponds to afinancial asset held by a financial institution, and wherein thefinancial institution and the insurance company are the same entity. 6.A computing device comprising: one or more storage units configured tostore a virtual wallet that includes at least one virtual financialasset having an assigned value; and one or more processors incommunication with the one or more storage units and configured to:establish an insurance policy with an insurance company for the virtualwallet with an insured amount based on a value of the virtual wallet,the value of the virtual wallet being equal to the assigned value of theat least one virtual financial asset included in the virtual wallet,wherein the one or more processors are configured to execute at leastone smart contract associated with the insurance policy for the virtualwallet, continuously track changes to the value of the virtual walletbased on changes to the assigned value of the at least one virtualfinancial asset included in the virtual wallet wherein the one or moreprocessors are configured to record the changes to the value of thevirtual wallet in a ledger associated with the at least one smartcontract, in response to the tracked changes, send a message to theinsurance company reporting an updated value of the virtual wallet, andin response to the message, receive an indication from the insurancecompany of an updated insured amount of the insurance policy based onthe updated value of the virtual wallet.
 7. The computing device ofclaim 6, wherein the virtual wallet comprises a single account thatincludes a plurality of virtual financial assets having individualassigned values, the value of the virtual wallet being equal to the sumof the individual assigned values of the plurality of virtual financialassets included in the virtual wallet; and wherein the one or moreprocessors are configured to continuously track the changes to the valueof the virtual wallet based on changes to one or more of the individualassigned values of the plurality of virtual financial assets.
 8. Thecomputing device of claim 6, wherein the one or more processors areconfigured to at least one of: send the message reporting the updatedvalue of the virtual wallet after each transaction performed using thevirtual wallet; send the message reporting the updated value of thevirtual wallet according to a periodic interval; or send the messagereporting the updated value of the virtual wallet upon the virtualwallet being compromised.
 9. The computing device of claim 6, wherein,to establish the insurance policy for the virtual wallet, the one ormore processors are configured to: send a request to the insurancecompany for the insurance policy for the virtual wallet, wherein therequest includes the value of the virtual wallet; and upon payment of apremium for the insurance policy, receive an indication from theinsurance company of the insured amount of the insurance policy based onthe value of the virtual wallet.
 10. The computing device of claim 6,wherein the at least one virtual financial asset included in the virtualwallet corresponds to a financial asset held by a financial institution,and wherein the financial institution and the insurance company are thesame entity.
 11. A method comprising: receiving, by an insurance serverof an insurance company and from a computing device, a request for aninsurance policy for a virtual wallet stored on the computing device,wherein the request includes a value of the virtual wallet, the value ofthe virtual wallet being equal to an assigned value of at least onevirtual financial asset included in the virtual wallet; storing, by theinsurance server, the insurance policy for the virtual wallet with aninsured amount based on the value of the virtual wallet, wherein storingthe insurance policy comprises recording the insured amount of theinsurance policy as an initial entry in a ledger; receiving, by theinsurance server and from the computing device, a message reporting anupdated value of the virtual wallet, the updated value of the virtualwallet being based on changes to the assigned value of the at least onevirtual financial asset included in the virtual wallet; and updating, bythe insurance server, the insured amount of the insurance policy basedon the updated value of the virtual wallet, wherein updating the insuredamount comprises recording the updated insured amount of the insurancepolicy as a new entry in the ledger.
 12. The method of claim 11, furthercomprising: upon the virtual wallet being compromised, receiving, by theinsurance server and from a user of the computing device, a claimagainst the insurance policy for the virtual wallet; and processing, bythe insurance server, the claim for payment of the updated insuredamount of the insurance policy as recorded in a most recent entry in theledger to the user of the computing device.
 13. The method of claim 11,wherein the virtual wallet comprises a single account that includes aplurality of virtual financial assets having individual assigned values,the value of the virtual wallet being equal to the sum of the individualassigned values of the plurality of virtual financial assets included inthe virtual wallet; and wherein the insured amount of the insurancepolicy is equal to the value of the virtual wallet, and the updatedinsured amount of the insurance policy is equal to the updated value ofthe virtual wallet based on changes to one or more of the individualassigned values of the plurality of virtual financial assets.
 14. Themethod of claim 11, wherein the ledger comprises a first ledger, themethod further comprising: receiving, by the insurance server, a secondledger of transactions performed using the virtual wallet; andvalidating, by the insurance server, the message received from thecomputing device reporting the updated value of the virtual wallet basedon a comparison of the reported updated value of the virtual wallet tothe transactions performed using the virtual wallet included in thesecond ledger of transactions.
 15. The method of claim 11, wherein theat least one virtual financial asset included in the virtual walletcorresponds to a financial asset held by a financial institution, andwherein the financial institution and the insurance company are the sameentity.
 16. An insurance server of an insurance company comprising: oneor more storage units configured to store virtual wallet insurancepolicies; and one or more processors in communication with the one ormore storage units and configured to: receive a request from a computingdevice for an insurance policy for a virtual wallet stored on thecomputing device, wherein the request includes a value of the virtualwallet, the value of the virtual wallet being equal to an assigned valueof at least one virtual financial asset included in the virtual wallet,store the insurance policy for the virtual wallet in the one or morestorage units with an insured amount based on the value of the virtualwallet, wherein to store the insurance policy, the one or moreprocessors are configured to record the insured amount of the insurancepolicy as an initial entry in a ledger, receive a message from thecomputing device reporting an updated value of the virtual wallet, theupdated value of the virtual wallet being based on changes to theassigned value of the at least one virtual financial asset included inthe virtual wallet; and update the insured amount of the insurancepolicy based on the updated value of the virtual wallet, wherein toupdate the insured amount, the one or more processors are configured torecord the updated insured amount of the insurance policy as a new entryin the ledger.
 17. The insurance server of claim 16, wherein the one ormore processors are configured to: upon the virtual wallet beingcompromised, receive, from a user of the computing device, a claimagainst the insurance policy for the virtual wallet; and process theclaim for payment of the updated insured amount of the insurance policyas recorded in a most recent entry in the ledger to the user of thecomputing device.
 18. The insurance server of claim 16, wherein thevirtual wallet comprises a single account that includes a plurality ofvirtual financial assets having individual assigned values, the value ofthe virtual wallet being equal to the sum of the individual assignedvalues of the plurality of virtual financial assets included in thevirtual wallet; and wherein the insured amount of the insurance policyis equal to the value of the virtual wallet, and the updated insuredamount of the insurance policy is equal to the updated value of thevirtual wallet based on changes to one or more of the individualassigned values of the plurality of virtual financial assets.
 19. Theinsurance server of claim 16, wherein the ledger comprises a firstledger, and wherein the one or more processors are configured to:receive a second ledger of transactions performed using the virtualwallet; and validate the message received from the computing devicereporting the updated value of the virtual wallet based on a comparisonof the reported updated value of the virtual wallet to the transactionsperformed using the virtual wallet included in the second ledger oftransactions.
 20. The insurance server of claim 16, wherein the at leastone virtual financial asset included in the virtual wallet correspondsto a financial asset held by a financial institution, and wherein thefinancial institution and the insurance company are the same entity.